<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" encoding="UTF-8" indent="no"/>
<!--
<![CDATA[
用途：实现类生成模板
创建日期：2010-08-01
修改人：王浚冰
修改日期：2010-08-01
修改位置：
]]>
-->
<xsl:template match="/">using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;

using Newtonsoft.Json;
using entity;
using formworks;
using formworks.DBO;
using formworks.DBO.Core;

namespace service
{
    /// <summary>
    /// 名称：<xsl:value-of select="/node()/@table"/>（<xsl:value-of select="/node()/@name"/>的业务层）
    /// 描述：<xsl:value-of select="/node()/@table"/>（<xsl:value-of select="/node()/@name"/>）的实现类
    /// 数据库名称：<xsl:value-of select="/node()/@table"/>
    /// ActionBase实现了IAction基本的数据操作接口操作，
    /// 可直接使用Query,Add,Modify,Remove等操作
    /// </summary>
    public class <xsl:value-of select="/node()/@table"/> : ActionBase<xsl:text disable-output-escaping="yes"><![CDATA[<]]></xsl:text>entity.<xsl:value-of select="/node()/@table"/><xsl:text disable-output-escaping="yes"><![CDATA[>]]></xsl:text>
    {
        
        #region IAction 默认的成员
        /************************************************************************/
        /**
        public <xsl:value-of select="/node()/@table"/>()
        {
			
        }

        //////////////////////////////////////////////////////////////////////////
        /// <summary>
        /// 根据用户请求构建查询语句
        /// <para>【可重写】用于构建复杂查询</para>
        /// </summary>
        /// <param name="request">用户http请求</param>
        /// <returns></returns>
        public override string constructQuerySQL(System.Web.HttpRequest request)
        {
            string list = request.Params["list"];
            //
            string keyword = request.Params["Keyword"];
            string condition = "";
            if(keyword != null <xsl:text disable-output-escaping="yes"><![CDATA[&&]]></xsl:text> "" != keyword)
            {
                condition = string.Format(" where [Country] like '%{0}%' ", keyword);
            }        
            //
            string sqlStr = 
            @"SELECT [AID]
                  ,[Continent]
                  ,[Country]
                  ,[Icon]
              FROM [VisaArea] " + condition + " order by AID desc";

            return sqlStr;
        }
        /// <summary>
        /// 构建查询返回的数据串
        /// <para>【可重写】根据需要重写构建查询返回数据串的格式。</para>
        /// <para>传入：dataList ： List<![CDATA[&lt；T&gt]]></para>
        /// <para>返回：json 字符串</para>
        /// </summary>
        /// <param name="datatable">需要处理的DataTable</param>
        /// <returns>json 字符串 或者其他数据结构字符串</returns>
        public override string constructQueryData(DataTable datatable, System.Web.HttpRequest request)
        {
            //
            string outJson = "";
            if(0 == page)
            {  
                //
                outJson = ToolKit.dataTableToJson(datatable);
            }
            else
            {
                outJson = ToolKit.constructionTableGridJson(datatable);
            }
            return outJson;
        }

        /// <summary>
        /// 添加操作时候触发的事件方法
        /// <para>重写克添加一些处理事件</para>
        /// </summary>
        public override void AddOperateEvent(entity.VisaArea model)
        {
            model.ID = Guid.NewGuid();
        }
        **/
        /************************************************************************/
        #endregion
    }//end <xsl:value-of select="/node()/@table"/> <xsl:value-of select="/node()/@name"/>
}//end namespace

</xsl:template>

</xsl:stylesheet>
